======================================================================
                 IBM-PC Parallel Printer Port Pinout
======================================================================

The IBM-PC Parallel Printer Port is a modified Centronics Parallel Interface.  The connection to the PC is through a DB-25 (25-pin) connector.  IBM-PC's support up to three parallel ports (some BIOS support four).  Each port provides 12 TTL outputs and 5 TTL inputs.

These ports have an 8-bit Data-Bus [with eight Positive-Data lines and eight Negative-Data (Signal-Ground) lines], four Output-Control lines, and five Input-Control (Device-Status) lines.  

Data-Bus directionality depends on the Operation Mode set for the port.  In Compatibility Mode, the Data-Bus lines are Outputs.  In the Extended PS/2 Bidirectional Mode, the Enhanced Parallel Port (EPP) Mode, and the Extended Capability Port (ECP) Mode, the Data-Bus lines are Inputs and Outputs (Bidirectional).  

                      DB-25 CONNECTOR
        ______       +-------------.
       -Strobe <---> | 01 ~         \         ____________
                     |          ~ 14 | <---> -Auto Feed XT
       +D0 <-(LSB)-> | 02            |
                     |            15 | <---< -Error/Fault
       +D1 <-------> | 03            |
                     |            16 | <---> -Reset/Initialize
       +D2 <-------> | 04            |        ____________
                     |          ~ 17 | <---> -Select-Input
       +D3 <-------> | 05            |
                     |            18 | <--> -DB0 (Twisted-Pair Gnd)
       +D4 <-------> | 06            |   |
                     |            19 | <--> -DB1 (Twisted-Pair Gnd)
       +D5 <-------> | 07            |   |
                     |            20 | <--> -DB2 (Twisted-Pair Gnd)
       +D6 <-------> | 08            |   |
                     |            21 | <--> -DB3 (Twisted-Pair Gnd)
       +D7 <-(MSB)-> | 09            |   |
                     |            22 | <--> -DB4 (Twisted-Pair Gnd)
  -Acknowledge >---> | 10            |   |
          ____       |            23 | <--> -DB5 (Twisted-Pair Gnd)
         +Busy >---> | 11 ~          |   |
                     |            24 | <--> -DB6 (Twisted-Pair Gnd)
  +Paper-Error >---> | 12            |   |
                     |            25 | <--> -DB7 (Twisted-Pair Gnd)
       +Select >---> | 13           /
                     +-------------'   <--->  Casing [Shield-Ground]

 Signal-Ground for +Signals.  (In cables, all signals should have twisted-pair wiring; each with one wire connected to TTL High or Low.)

======================================================================
IBM-PC Parallel Printer Port Pinout                             Page 1
======================================================================
======================================================================
                 IBM-PC Parallel Printer Port Pinout
======================================================================

                          Legend:
                     +---------------+
               >---> | Input  Signal | >---<
                     | (To Computer) |
                     +---------------+
               <---< | Output Signal | >--->
                     |(From Computer)|
                     +---------------+
               <---> |Input or Output| <--->
                     | (I/O) Signals |
                     |  (To & From   |
                     |   Computer)   |
                     +---------------+

                       Pinout Chart:
----------------------------------------------------------------------
  Pin No.   Signal Name         Direction   Register-Bit   Inverted
  -------   -----------------   ---------   ------------   --------
  01    ~   -Strobe               In/Out     Control-0     Yes ~
  02        +Data0               In?/Out        Data-0     No
  03        +Data1               In?/Out        Data-1     No
  04        +Data2               In?/Out        Data-2     No
  05        +Data3               In?/Out        Data-3     No
  06        +Data4               In?/Out        Data-4     No
  07        +Data5               In?/Out        Data-5     No
  08        +Data6               In?/Out        Data-6     No
  09        +Data7               In?/Out        Data-7     No
  10        -Acknowledge          In/---      Status-6     No
  11    ~   +Busy                 In/---      Status-7     Yes ~
  12        +Paper-Error          In/---      Status-5     No
  13        +Select               In/---      Status-4     No
  14    ~   -Auto Feed XT         In/Out     Control-1     Yes ~
  15        -Error/Fault          In/---      Status-3     No
  16        -Reset/Initialize     In/Out     Control-2     No
  17    ~   -Select-Input         In/Out     Control-3     Yes ~
  18-25     -Signal-Ground        (N/A)          (N/A)     (N/A)
  Casing     Shield-Ground        (N/A)          (N/A)     (N/A)
----------------------------------------------------------------------

~ Pins 01, 11, 14, and 17 are Negative TTL; the rest are Positive TTL:

Negative TTL (inverted logic) lines are true when pulled low (0 is ON) and false when pulled high (1 is OFF).

Positive TTL (normal logic) lines are true when pulled high (1 is ON) and false when pulled low (0 is OFF).

======================================================================
IBM-PC Parallel Printer Port Pinout                             Page 2
======================================================================
======================================================================
                 IBM-PC Parallel Printer Port Pinout
======================================================================

Function of Output-Control lines
----------------------------------------------------------------------

Control-0 (Pin 01) [Bidirectional]: 
 ______
-Strobe clocks the transmission of data: when the data is ready to transmit, the sender pulls this line low.  [Twisted-Pair's +signal-wire connects to TTL High (+5v).]

Control-1 (Pin 14) [Bidirectional]: 
 ____________
-Auto Feed XT, when held low, enables a printer to automatically feed paper one line at the end of print lines, and to pagenate at the end of print pages.  [Twisted-Pair's +signal-wire connects to TTL High (+5v).]

Control-2 (Pin 16) [Bidirectional]: 

-Reset/Initialize, when pulled high, resets and initializes a device; Resets a printer (clears the print buffer) and initializes the printer for printing (aligns the print head at the top of the paper and at the start of the print page).  [Twisted-Pair's +signal-wire connects to TTL High (+5v).]

Control-3 (Pin 17) [Bidirectional]: 
 ____________
-Select-Input; when pulled low, signals a device to get online/turn-on/wake-up; when pulled high, signals a device to get offline/turn-off/sleep.  [Twisted-Pair's +signal-wire connects to TTL High (+5v).]

======================================================================

Function of Input-Control (Device-Status) lines
----------------------------------------------------------------------

Status-3 (Pin 15) [Unidirectional]: 

-Error/Fault, when pulled high, signals a Device-Fault.  The device is offline (turned-off/asleep/broken) and unable to receive data.  [Twisted-Pair's +signal-wire connects to TTL High (+5v).]

Status-4 (Pin 13) [Unidirectional]: 

+Select, when pulled high, signals that a device is online and ready to receive data.  [Twisted-Pair's -signal-wire connects to TTL Low (Gnd).]

======================================================================
IBM-PC Parallel Printer Port Pinout                             Page 3
======================================================================
======================================================================
                 IBM-PC Parallel Printer Port Pinout
======================================================================

Status-5 (Pin 12) [Unidirectional]: 

-Paper-Error [Paper-End/Paper-Fault/Paper-Out] (PE/PF/PO), when held high, signals that a device needs servicing.  A printer pulls this line high when it has a paper fault (no paper, a paper jam, misalign-ment, etc.).  [Twisted-Pair's +signal-wire connects to TTL High (+5v).]

Status-6 (Pin 10) [Unidirectional]: 

-Acknowledge clocks the transmission of data: when data has been received, the receiver pulls this line high to acknowledge the receipt of the data.  [Twisted-Pair's +signal-wire connects to TTL High (+5v).]

[ACK is an INVERTED strobe on my EPSON MX-100!]=[Centronics Std.] 

Status-7 (Pin 11) [Unidirectional]: 
 ____
+Busy, when held low, signals that a device cannot receive data.  After the receipt of data, a printer pulls this line low, prints the data, then pulls this line high again.  [Twisted-Pair's -signal-wire connects to TTL Low (Gnd).]

[BUSY is NOT INVERTED on my EPSON MX-100!]=[Centronics Std.] 






















======================================================================
IBM-PC Parallel Printer Port Pinout                             Page 4
======================================================================
